home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Atari Compendium
/
The Atari Compendium (Toad Computers) (1994).iso
/
files
/
umich
/
utils
/
abe.arc
/
README
< prev
next >
Wrap
Text File
|
1989-06-22
|
9KB
|
241 lines
ABE Ascii-Binary Encoding System (Brad Templeton 1989)
(abe/dabe/tinydabe)
---ABE:[gemdos][version 1000][890616][AR]------------------------------------
This is the GEMDOS [ATARI.ST] variant of the recently posted
[890604] ABE Encoder/Decoder of Brad Templeton.
The original code was clean enough to allow a straightforward
porting to the ATARI.ST machines, using either the MW C or
the [pd] SOZOBON C compiler. MW C generates less code than
SOZOBON C, but its C-library is not fully compatible with
the UNIX Clib [BSD4.x, SUN 3.x].
The obvious solution was to replace the faulty items (as, for
instance, scanf(), sscanf(), etc.) by [dLib 1.2]-analogues,
written by Dale Schumacher (1988). The latter Clib is [pd].
The [gemdos] version has some new features, intended to support
a direct desk-top manipulation of the main encoder/decoder (no
Bourne-like shell needed). However, tinydabe needs a shell.
The [gemdos] idiosyncrasies are documented below (but NOT in
the manuals).
As specified by the author, the sources are copyrighted. The
tiny decoders [source + binaries] are in the public domain and
so is the [gemdos] version of the binaries, herewith included.
If it turns out that there is a larger interest in the ABE-style
encoding/decoding, I will eventually produce also a Macintosh
analogue of the package (intended to work as a substitute for
BinHex & Co., FULLY PORTABLE ACROSS different OSs).
For further information, support, bug-reports, contact please
the [original] author, not me. [AR].
---[Copyright info:][BT]-----------------------------------------------------
[This package] is Copyright 1989 by Brad Templeton. I hereby grant
a licence for unlimited use of binaries generated by compiling this
source code.
The source code may be distributed and modified for non-commercial
purposes, but all copyright messages must be retained.
Changes which alter the file format of ABE files are not permitted
without the explicit consent of Brad Templeton. I mean it.
No fee is required for the use of the program(s). See the MAN page(s)
for more details.
Changes which move these programs to other machines and operating
systems are encouraged. (Fine! [AR].)
Please send any port to a new machine to me at abe@looking.UUCP. [BT].
---[Disclaimer:][AR]---------------------------------------------------------
"We make no warranty with respect to the contents of this document,
of the appended manuals, or of the software they describe, and
disclaim any explicit and/or implied suggestions of usefulness
for any particular purpose.
Use of the described software presupposes the fact that the user
is willing to assume all risks, and/or damages, if any, arising
as a result, even if this is caused by negligence, ignorance or
some other fault." [AR].
---[General info:][AR]-------------------------------------------------------
SOURCES [unix][msdos][gemdos]:
AUTHOR: brad@looking.on.ca (Brad Templeton)
UNIX/MSDOS [originals] posted to:
Newsgroups: comp.sources.misc
Reference: [Volume 7, Issues 1-2] = [v07i001/002]
Moderator: allbery@uunet.UU.NET (Brandon S. Allbery)
Subject: ABE bullet-proof ascii encoder
Date: 4 Jun 89 [01:07:26 GMT][01:07:41 GMT]
Submitted-by: brad@looking.on.ca (Brad Templeton)
Archive-name: abe/part01, abe/part02
CURRENT VERSION: [1000]
CONTENTS [SOURCES]:
- Makefile
- abe.h
- abe.c
- dabe.c
- tinydabe.c [2 versions: tdABE1.c, tdABE2.c]
NOTA BENE: Only tinydabe is in the public domain.
CONTENTS [DOCUMENTATION]:
- read.me
- [nroff -man]: abe.1, dabe.1
- abeformat.
---[Here is a copy of the original READ.ME as posted by the author:]---------
ABE Ascii-Binary Encoding System by B. Templeton
ABE is a replacement for uuencode/uudecode designed to deal with all the
typical problems of USENET transmission, along with those of other media.
Advantages are:
Files are often smaller, and compress well.
All printable characters map to themselves, so strings in
binaries are readable right in the encoding.
All lines are indexed, so sort(1) can repair any random
scrambling of lines or files. (This can be turned off.)
Extraneous lines (news headers, comments, signatures etc.) are
ignored, even in the middle of encodings.
A PD tiny decoder is available to include with files for first
time users.
Files can be split up automatically into equal sized blocks.
Blocks can contain redundant information so that the decoder
can handle blocks in any order, even with reposted duplicates
and extraneous articles.
Files with blank regions can be constructed from multi-part
encodings with damaged blocks.
Multiple files can be placed in one encoding.
The decoder is extremely general and configurable, and supports
many features not currently found in the encoder, but which other
encoder writers might fight useful.
In general, a redundant ABE encoding posted to a typical newsgroup over
a certain article region can be decoded with something as simple as:
dabe /usr/spool/news/comp/binaries/group/3[45]?
Where it doesn't matter much if there are postings in a random order,
duplicate postings, or inserted articles on other topics. Ie. exactly
all the things that are a pain about usenet (or mail) binaries.
(You can usually run dabe right on your entire mailbox.)
The ABE encoder (and decoder) support 3 different encoding formats. One
uses all 94 printable ASCII characters, the other avoids characters that
have trouble in ASCII-EBCDIC translations, and the 3rd is the UUENCODE
format. (ABE can make files decodable by a typical uudecode program.)
---[AR: Info for the recipients of the comp.sources.misc archive:]---
To build, unpack these files in a directory. Move the tiny decoders,
td*, to some official place, and edit the Makefile to indicate where
you put it. (Example, /usr/lib/td%s.) Check the Makefile and defines
file (abe.h) for any system dependencies, then make.
Install the resulting abe and dabe programs in some bin directory.
Install abe.1 and dabe.1 in appropriate man directories. Leave the file
format description around for people to read it. (Possibly modify abe.1
[= abe.man, AR] to indicate where the file format file is, and where the
tiny decoders are.)
The main portability concern involves my use of arbitary args to fprintf
in the various warning and error message routines in abe.c and dabe.c.
Watch for these. [BT].
---[end of READ.ME file]-----------------------------------------------------
---[GEMDOS-ABE info:][AR]----------------------------------------------------
GEMDOS-ABE: ATARI.ST DISTRIBUTION [AR][890616]:
CURRENT VERSION [gemdos][1000] for ATARI.ST
SOURCES [unix][msdos][gemdos][etcaetera]:
- tdabe1.c [ASCII-ONLY version]
- tdabe2.c [EBCDIC version]
BINARIES [gemdos]:
- abe.ttp
- dabe.ttp
- tdabe1.prg [= tinydabe for ASCII-ONLY format]
- tdabe2.prg [= tinydabe for EBCDIC format]
DOCUMENTATION:
- readme [= this file]
- abe.man [= formatted abe.1]
- dabe.man [= formatted dabe.1]
- abe_fmt.doc [= abeformat]
CC INFO: This [gemdos] version has been obtained with:
- MW C 3.0.5 (Mark Williams Comp. 1988) and
- dLibs 1.2 ([pd], by Dale Schumacher 1988).
GEMDOS [ATARI.ST] IDIOSYNCRASIES:
(0) READ THIS, TOO: the *.man's are NOT updated for [gemdos]!
(1) Both abe.ttp and dabe.ttp admit of UPPERCASE options
(intended for desk-top only use).
(2) New feature: abe.ttp admits of a new option
output=<path-name>
This sends the encoded output to <path-name> instead of
stdout. Useful for desk-top only usage and/or (some kind
of) batch processing.
Example: with
[abe.ttp] o=abe_src.abe \src\abe\*
we make an abe-encoded archive abe_src.abe of the contents
of the {current-drive:}\src\abe-fol